<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2019/3/14
 * Time: 18:09
 */

// 读取目录
$file_list = unserialize(file_get_contents('./img_list.db'));
$data = file_get_contents('./data.db');
$data = unserialize($data);
if (isset($_POST['date'])){  // 接收到文件更新请求

    // 当前文件夹
    $img_dir = $_POST['date'];
    chdir('./img/'.$img_dir);
    $file = $_FILES['image'];

    // 保存新上传的文件
    if (is_uploaded_file($file['tmp_name'])){
        move_uploaded_file($file['tmp_name'],__DIR__.'/img/'.$img_dir.'/'.$file['name']);
    }

    // 当前文件夹下是否还有文件要更新
    $now_dir = $file_list[$img_dir];
    $dir_key = array_keys($file_list);
    $dir_index = array_search($img_dir,$dir_key);
    $now_index = 0;
    foreach ($now_dir as $k => $v){
        if ($v === $file['name']){
            if ($k === (count($now_dir) -1)){  // 目录下没有文件要更新
                if (!array_key_exists($dir_index+1, $dir_key)){
                    exit(json_encode(['new_href' => null]));
                }
                $dir_index = $dir_key[$dir_index+1];
            }else{  // 有文件要更新
                $dir_index = $dir_key[$dir_index];
                $now_index = $k+1;
            }
            break;
        }
    }
    $now_file = $file_list[$dir_index][$now_index];

    // 根据图片链接来获取产品ID
    $now_cover = 'Maintain/'.$dir_index.'/'.$now_file;
    $res = isset($data[$now_cover]) ? $data[$now_cover] : 'noid';
    if ($res == 'noid'){  // 错误日志, 列出找不到ID的图片
        $err_file = fopen('../../err.db','a+');
        fwrite($err_file,$now_cover."\n");
        fclose($err_file);
    }

    // 返回下一张图片处理页的URL
    exit(json_encode(['new_href' => 'http://localhost/index.php?date='.$dir_index.'&file_name='.$now_file.'&pid='.$res]));
}else{

    // 第一次, 返回第一张图片处理的URL
    $dir_key = array_keys($file_list);
    $dir_index = $dir_key[0];
    $now_file = $file_list[$dir_index][0];

    // 根据图片链接来获取产品ID
    $now_cover = 'Maintain/'.$dir_index.'/'.$now_file;
    $res = isset($data[$now_cover]) ? $data[$now_cover] : 'noid';
    if ($res == 'noid'){  // 错误日志, 列出找不到ID的图片
        $err_file = fopen('../../err.db','a+');
        fwrite($err_file,$now_cover."\n");
        fclose($err_file);
    }
    header('location:http://localhost/index.php?date='.$dir_index.'&file_name='.$now_file.'&pid='.$res);
}



